# !/usr/bin python3                                
# encoding: utf-8 -*-
# @file: cstomized_loan_sp.py                       
# @author   : wjd
# @Time: 2023/12/21 16:44
import random
from faker import Faker
from api.base_api import BasePrimeSpApi

fake = Faker(locale='zh_CN')


class Prime_CustomizedLendingOrder_Add(BasePrimeSpApi):
    """
    创建定制化质押借贷
    """

    def __init__(self, userId):
        super().__init__()
        self.url = f'{self.host}/api/prime/customizedLendingOrder/add/'
        self.method = 'post'
        self.json = {
            "code": "123456",
            "onceLoanConfigList": [{
                "name": "一次性定时任务测试-1",  # 一次性定时任务测试-1
                "loanAmount": "10",  # 10
                "orderStartTime": 1690819200000,  # 订单起始时间
                "intervalType": 1,  # 借款期限类型：1-固定期，2-开放期限.
                "annualizedProfitRate": "0.1",  # 借款年化利率.
                "penaltyAnnualizedProfitRate": "0.05",  # 罚息年化利率.
                "repaymentMonth": 1,  # 利息还款(月).
                "repaymentDay": 1,  # 利息还款(日).
                "repaymentType": 1,  # 还款方式：1-利息，2-等额本息.
                "interestTime": 1690819200000,  # 利息还款时间.
                "interestRule": 1,  # 起息规则，1:当日，2:次日
                "labelEnJsons": [],  # 标签-英文.
                "id": "",
                "dueTime": 1719676800000  # 到期时间.
            }],
            "periodLoanConfigList": [{
                "name": "周期性回归-02",
                "orderStartTime": 1688140800000,  # 订单起始时间
                "intervalType": 1,  # 借款期限类型：1-固定期，2-开放期限.
                "annualizedProfitRate": "0.12",  # 借款年化利率.
                "penaltyAnnualizedProfitRate": "0.02",  # 罚息年化利率.
                "repaymentMonth": 1,  # 利息还款(月).
                "repaymentDay": 1,  # 利息还款(日).
                "periodMonth": 1,  # 周期性回归(月).
                "periodDay": 1,  # 周期性回归(日).
                "repaymentType": 1,  # 还款方式：1-利息，2-等额本息.
                "needUpload": 1,  # 是否需要上传附件：0-不需要，1-需要.
                "needFee": 1,  # 是否需要手续费：0-不需要，1-需要.
                "labelEnJsons": [],  # 标签-英文.
                "id": "",  # 主键ID.
                "dueTime": 1719676800000  # 到期时间.
            }],
            "productType": 31,  # 产品类型：31-质押借贷.
            "userList": [{
                "id": userId,  # 用户ID. # 19057325194688
                "email": "iostest@snapmail.cc",  # 用户邮箱.
                "fullName": "IOS企业名称34152352341",  # 用户全称.
                "isNew": True  # 是否新用户.
            }],
            "pledgeTypeList": [1],  # 质押物类型列表：1-质押币，2-挖矿收益，3-矿机.
            "pledgeCurrencyDTOList": [{  # 初始质押币种列表.
                "walletType": 0,  # 是否钱包币种
                "currency": "USD",  # 币种.
                "amount": "10"  # 数量.
            }],
            "loanCurrency": "USD",  # 借款币种.
            "needKyc": 0,  # 是否需要KYC：0-不需要，1-需要.
            "needDdq": 0,  # 是否需要DDQ：0-不需要，1-需要.
            "enable": 1,  # 是否启用：0-不启用，1-启用.
            "userId": userId  # 用户ID.
        }


if __name__ == '__main__':
    print(random.randint(1, 10))
    print(fake.date_time_between_dates())
